package com.hanxin.service;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hanxin.pojo.Result;
import com.hanxin.pojo.TAudit;
import com.hanxin.pojo.Twoindex;
import com.hanxin.utils.AppealDto;
import com.hanxin.utils.EditAppeal;

import java.util.List;

/**
 * 成绩申诉
 */
public interface AppealService {

    /**
     * 根据传入的对象查询成绩申诉信息
     * @param appealDto
     * @return
     */
    Result<Object> getAppeal(AppealDto appealDto);

    /**
     *  根据id删除成绩申诉
     * @param ids
     * @return
     */
    Result<Object> deleteByIds(List<Integer> ids);

    /**
     *  根据id提交成绩申诉，修改申请状态为待审核
     * @param ids
     * @return
     */
    Result<Object> subByids(List<Integer> ids);

    /**
     * 根据传入的id撤回提交成绩申诉，修改申请状态为已保存
     * @param ids
     * @return
     */
    Result<Object> subzByids(List<Integer> ids);

    /**
     *  根据传入的对象查询成绩申诉
     * @param editAppeal
     * @return
     */
    Result<Object> editCacheCheck(EditAppeal editAppeal);

    /**
     *  根据传入的参数将勾选的id的数据显示到编辑页面
     * @param editAppeal
     * @return
     */
    Result<Object> editNoCacheCheck(EditAppeal editAppeal);

    /**
     * 根据传入的内容修改数据库，编辑的实现
     * @param editAppeal
     * @return
     */
    Result<Object> editCheck(EditAppeal editAppeal);

    /**
     *  点击取消后将当前页面数据缓存到redis
     * @param editAppeal
     * @return
     */
    Result<Object> cancelAppeal(EditAppeal editAppeal);


}
